package dict

import (
	"gitee.com/micro-plat/codeless/apiserver/meta/biz/dict"
	"github.com/micro-plat/hydra"
)

// AddDicHandle 添加分类的HTTP处理函数
func AddDicHandle(ctx hydra.IContext) interface{} {
	if err := ctx.Request().Check("label", "value"); err != nil {
		return err
	}
	tenantID := ctx.Request().GetInt("tenant_id")
	label := ctx.Request().GetString("label")
	value := ctx.Request().GetString("value")
	pid := ctx.Request().GetInt("pid")
	err := dict.AddValue(tenantID, label, value, pid)
	return err
}

// DeleteDicHandle 删除数据的HTTP处理函数
func DeleteDicHandle(ctx hydra.IContext) interface{} {
	if err := ctx.Request().Check("id"); err != nil {
		return err
	}
	tenantID := ctx.Request().GetInt("tenant_id")
	id := ctx.Request().GetInt64("id")
	err := dict.DeleteDict(tenantID, id)
	if err != nil {
		return err
	}
	return nil
}

// QueryAllDicsHandle 查询所有数据的HTTP处理函数
func QueryAllDicsHandle(ctx hydra.IContext) interface{} {
	tenantID := ctx.Request().GetInt("tenant_id")
	dics, err := dict.QueryAllDicts(tenantID)
	if err != nil {
		return err
	}
	return dics
}
